package com.ideaaedi.springcloud.jd.commonds.entity.user.vo.resp;

import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * <p>
 * 系统-菜单表 list resp
 * </p>
 *
 * @author <font size = "20" color = "#3CAA3C"><a href="https://gitee.com/JustryDeng">JustryDeng</a></font> <img src="https://gitee.com/JustryDeng/shared-files/raw/master/JustryDeng/avatar.jpg" />
 * @since 2021.0.5.B
 */
@Data
@ApiModel(description = "系统-菜单表 list resp")
public class SysMenuListRespVO {

    /**
     * id
     */
    @ApiModelProperty("id")
    @ExcelProperty("id")
    private Long id;
    
    /**
     * 租户编码
     */
    @ApiModelProperty("租户编码")
    @ExcelProperty("租户编码")
    private String tenant;
    
    /**
     * 所属业务租户的名称
     */
    @ApiModelProperty("所属业务租户的名称")
    @ExcelProperty("所属业务租户的名称")
    private String tenantName;
    
    /**
     * 父菜单id（无则填0）
     */
    @ApiModelProperty("父菜单id（无则填0）")
    @ExcelProperty("父菜单id（无则填0）")
    private Long pid;

    /**
     * 类型（1-普通菜单）
     */
    @ApiModelProperty("类型（1-普通菜单）")
    @ExcelProperty("类型（1-普通菜单）")
    private Integer type;

    /**
     * 菜单编码
     */
    @ApiModelProperty("菜单编码")
    @ExcelProperty("菜单编码")
    private String code;

    /**
     * 菜单名
     */
    @ApiModelProperty("菜单名")
    @ExcelProperty("菜单名")
    private String name;

    /**
     * 菜单路径（从最顶级菜单到当前菜单的路径）
     */
    @ApiModelProperty("菜单路径（从最顶级菜单到当前菜单的路径）")
    @ExcelProperty("菜单路径（从最顶级菜单到当前菜单的路径）")
    private String path;

    /**
     * 同一级菜单的排序优先级（越小越靠前）
     */
    @ApiModelProperty("同一级菜单的排序优先级（越小越靠前）")
    @ExcelProperty("同一级菜单的排序优先级（越小越靠前）")
    private Integer sort;

    /**
     * 前端相关配置 - 菜单图标
     */
    @ApiModelProperty("前端相关配置 - 菜单图标")
    @ExcelProperty("前端相关配置 - 菜单图标")
    private String icon;

    /**
     * 前端相关配置 - 组件路径
     */
    @ApiModelProperty("前端相关配置 - 组件路径")
    @ExcelProperty("前端相关配置 - 组件路径")
    private String component;

    /**
     * 前端相关配置 - 组件名
     */
    @ApiModelProperty("前端相关配置 - 组件名")
    @ExcelProperty("前端相关配置 - 组件名")
    private String componentName;

    /**
     * 是否可见
     */
    @ApiModelProperty("是否可见")
    @ExcelProperty("是否可见")
    private Integer visible;

    /**
     * 菜单备注说明
     */
    @ApiModelProperty("菜单备注说明")
    @ExcelProperty("菜单备注说明")
    private String remark;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createdAt;

    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    @ExcelProperty("修改时间")
    private LocalDateTime updatedAt;

}